/* 
 * File:   analisys.h
 * Author: gustavo
 *
 * Created on July 31, 2011, 4:54 AM
 */

#ifndef ANALISYS_H
#define	ANALISYS_H

#ifdef	__cplusplus
extern "C" {
#endif

#include "../image.h"
#include "../../matrix/matrix.h"

	int imp_image_label(ImpMatrix * Mat, ImpMatrix ** Label, real fv);

	void imp_image_select4(ImpImage Gray, int x, int y, ImpImage ** Sel);
	void imp_image_select8(ImpImage Gray, int x, int y, ImpImage ** Sel);

	void imp_image_label4(ImpImage Gray, ImpImage ** Label, int * count);
	void imp_image_label8(ImpImage Gray, ImpImage ** Label, int * count);

	void imp_image_histogram(ImpImage * Gray, ImpMatrix ** Hist, boolean normalized);
	void imp_image_histogram_mat(ImpMatrix * Gray, ImpMatrix ** Hist);

	real imp_image_get_otsu_threshold(ImpMatrix * Hist);
	real imp_image_get_otsu_threshold_from_image(ImpMatrix* Image);

#ifdef	__cplusplus
}
#endif

#endif	/* ANALISYS_H */

